package com.chart.common.core.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * ChartList 实体类
 *
 * @author chart
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("chart_list")
public class ChartList {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 图表编码
     */
    private Integer chartCode;

    /**
     * 图表分类
     */
    private Integer chartSort;

    /**
     * 图表路径
     */
    private String chartPath;

    /**
     * 公共配置的UI
     */
    private String chartConfigUi;

    /**
     * 图表名称
     */
    private String chartName;

    /**
     * 缩略图
     */
    private String smallPic;

    /**
     * 介绍
     */
    private String chartInstr;

    /**
     * 描述
     */
    private String chartDesc;

    /**
     * 图表星级
     */
    private Integer chartStar;

    /**
     * 数据源数量
     */
    private Integer dataAmount;

    /**
     * 默认样例
     */
    private String defaultData;

    /**
     * 默认配置
     */
    private String defaultConfig;

//    /**
//     * 关联图表
//     */
    private Integer relateSort;

    private String chartMapName;

    private String chartMapPath;

    /**
     * 收藏数
     */
    private Integer collectNum;

    /**
     * 上线状态
     */
    private Integer status;

    /**
     * 创建时间（UNIX时间戳）
     */
    private Integer createTime;  // 映射数据库的 create_time 字段

    /**
     * 删除时间（UNIX时间戳）
     */
    private Integer deleteTime;  // 映射数据库的 delete_time 字段


    private Integer  isComplex;
    /**
     * 版本号
     */
    private Integer version;

    /**
     * 关联图表的列表
     */
    @TableField(exist = false) // 不映射到数据库
    private List<ChartList> relateList;  // 新增字段，存储与当前图表关联的图表对象列表


}
